package cn.birdbaby.plugins.constants;

import java.util.Arrays;
import java.util.List;

/**
 * @author llorando 7/8/24 2:54 pm
 */
public class Constants {
    public final static List<String> all= Arrays.asList(
            "GenController",
            "GenCreateRequest",
            "GenCreator",
            "GenMapper",
            "GenQuery",
            "GenQueryRequest",
            "GenRepository",
            "GenService",
            "GenResponse",
            "GenUpdater",
            "GenUpdateRequest",
            "GenVo"
    );
    public static final String CREATE_REQUEST_SUFFIX = "CreateRequest";
    public static final String VO_SUFFIX = "VO";
    public static String FEIGN_SUFFIX = "FeignService";
    public static String QUERY_REQUEST_SUFFIX = "QueryRequest";
    public static String RESPONSE_SUFFIX = "Response";
    public static String REQUEST_SUFFIX = "Request";
    public static String UPDATE_REQUEST_SUFFIX = "UpdateRequest";
    public static final String CONTROLLER_SUFFIX = "Controller";
    public static final String REPOSITORY_SUFFIX = "Repository";
    public static final String IMPL_SUFFIX = "ServiceImpl";
    public static final String SERVICE_SUFFIX = "Service";
    public static final String CREATOR_SUFFIX = "Creator";
    public static final String UPDATER_SUFFIX = "Updater";
    public static String QUERY_SUFFIX = "Query";
    public static final List<String> mappings = Arrays.asList("PostMapping", "PatchMapping", "PutMapping", "RequestMapping", "DeleteMapping", "GetMapping");
    public static final List<String> GEN_GROUP = Arrays.asList(
            Constants.CREATOR_SUFFIX,
            Constants.CREATOR_SUFFIX,
            Constants.VO_SUFFIX,
            Constants.RESPONSE_SUFFIX,
            Constants.UPDATER_SUFFIX,
            Constants.UPDATE_REQUEST_SUFFIX
    );


    public static class AnnotationName{
        public static final String SCHEMA="Schema";
        public static final String FIELD_DESC="FieldDesc";
        public static final String ENTITY="Entity";
        public static final String TABLE="Table";
        public static final String CONTROLLER="Controller";
        public static final String REST_CONTROLLER="RestController";
    }

    public class SyncerName{
        public static final String GEN_GROUP="GEN_GROUP";
    }
}
